﻿using System;
using System.Collections.Generic;
using NETDeob.Core.Engine;

namespace NETDeob.Core.Deobfuscators.Confuser._1_9
{
    public class Unpacker : IRoutine
    {
        public String Description
        {
            get { return "Unpack Packer"; }
        }

        public Dictionary<Func<Boolean>, String> Phases
        {
            get
            {
                return new Dictionary<Func<Boolean>, String>
                {
                        {Phase1, "Detect Packer Confusion"},
                        {Phase2, "Decrypt Resources"}
                    };
            }
        }

        private Boolean Phase1()
        {
            return Settings.TargetAssemblyDef.Modules[0].EntryPoint.DeclaringType.FullName.Contains("CompressShell");
        }

        private Boolean Phase2()
        {
            // TODO:COMPLETE
            return false;
        }
    }
}
